﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OBDUDSUtils.EtasCAN
{
    public class NeoResult
    {
        public Int32 pNumDevices { get; set; }

        public Int32 Result { get; set; }

        public IntPtr hObject { get; set; }

        public byte Data { get; set; }

        public UInt32 DataSize { get; set; }

        public Int32 pNumberOfErrors { get; set; }

        public Int32 pNumberOfMessages { get; set; }

        public double pTimeStamp { get; set; }

        public string sTempString { get; set; }

        public byte lNetworkID { get; set; }

        public UInt32 NumTxed { get; set; }

        public Int32 lTxStatus { get; set; }

        public Int32 lRxStatus { get; set; }

        public byte pData { get; set; }

        public Int32 lNumBytes { get; set; }

        public SFireSettings sFireSettings { get; set; }

        public SFire2Settings sFire2Settings { get; set; }

        public SVCAN3Settings svCAN3Settings { get; set; }

        public SVCAN412Settings svCAN412Settings { get; set; }

        public SRADStar2Settings sRADStar2Settings { get; set; }

        public SRADGalaxySettings sRADGalaxySettings { get; set; }

        public SVCANRFSettings svCANRFSettings { get; set; }

        public SRADPlutoSettingsPack srADPlutoSettingsPack { get; set; }

        public char pParameter { get; set; }

        public char pValues { get; set; }

        public char pParmValue { get; set; }

        public Int32 pErrorIndex { get; set; }

        public Int32 pErrorMsgs { get; set; }

        public Int32 iNumBytes { get; set; }

        public int iMaxLengthShort { get; set; }

        public int iMaxLengthLong { get; set; }

        public int lErrorSeverity { get; set; }

        public int lRestartNeeded { get; set; }

        public byte bin { get; set; }

        public Int32 piRunStatus { get; set; }

        public Int32 piStatus { get; set; }

        public byte bSCPIDs { get; set; }

        public Int32 p_lDeviceTypes { get; set; }

        public Int32 p_lComPorts { get; set; }

        public Int32 p_lSerialNumbers { get; set; }

        public NeoDevice pNeoDevice { get; set; }

        public icsSpyMessage[] pMsgArray { get; set; }

        public icsSpyMessage pMessage { get; set; }

        public stCM_ISO157652_TxMessage iso01576Message { get; set; }

        public stCM_ISO157652_RxMessage iso1576RxMessage { get; set; }

        public icsSpyMessageJ1850 stJ1850Message { get; set; }

        public PhyRegPkt_t PHYSettings { get; set; }

        public NeoDeviceEx neoDeviceEx { get; set; }

        public OptionsNeoEx pOptionsFindNeoEx { get; set; }
    }

    public class EsReceiveData
    {
        public string NetWork { get; set; }

        public int ArbID { get; set; }

        public byte[] Data { get; set; } = new byte[8];

        public bool IsReadCompleted { get; set; } = false;
    }
}
